[IA64] fix broken PAL_HALT_LIGHT
authorawilliam@xenbuild.aw <awilliam@xenbuild.aw>
Tue, 21 Nov 2006 04:10:59 +0000 (21:10 -0700)
committerawilliam@xenbuild.aw <awilliam@xenbuild.aw>
Tue, 21 Nov 2006 04:10:59 +0000 (21:10 -0700)
xen-unstable.hg cset 12471:cf98903ebb22 changed do_block() to
only pend a schedule softirq.  We now need to explicitly call
do_softirq() for force the schedule, otherwise we stop the
hlt_timer before it does it's thing.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
xen/arch/ia64/xen/hypercall.c

index d04ed8b11dd5d0fcba6fcaebba9af25d48b31127..ba4daba2970f80e0414b67a60ae591516871bac6 100644 (file)
@@ -248,6 +248,8 @@ ia64_hypercall(struct pt_regs *regs)
                                set_timer(&v->arch.hlt_timer,
                                          vcpu_get_next_timer_ns(v));
                                do_sched_op_compat(SCHEDOP_block, 0);
+                               /* do_block only pends a softirq */
+                               do_softirq();
                                stop_timer(&v->arch.hlt_timer);
                        }
                        regs->r8 = 0;